home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 11 / FM Towns Free Software Collection 11.iso / t_os / data / nos / connect.plp < prev    next >
Text File  |  1995-07-31  |  21KB  |  802 lines

  1. /************************************************************************
  2. *    NIFTY-Serveオンライン・サインアップ通信処理        *
  3. *              presented by    -なる-☆  (PGA01332)&    *
  4. *                    Yama-Chan   (PEE01244)    *
  5. *************************************************************************/
  6. var    N1    [2];
  7. var    N2    [2];
  8. var    N31    [2];
  9. var    N32    [2];
  10. var    N33    [2];
  11. var    TELNO    [20];
  12. var    road1    [20];
  13. var    road2    [20];
  14. var    road3    [20];
  15.  
  16. /*        通信初期情報の設定                */
  17. %init    {
  18.     xon    ({Yes});    /*    x制御無効        */
  19.     case    (@tail(MODEM,{00}),
  20.         {m},{rscs({Yes})},/*    RS-CS制御の選択        */
  21.         {n},{rscs({No})});
  22.     click    ({Yes});    /*    クリック音を消す    */
  23.     ctrl    ({No});        /*    ctrlコード有効        */
  24.     esc    ({No});        /*    escシーケンス有効    */
  25.     stopbit    ({1});        /*    STOPBIT の設定        */
  26.     parity    ({None});    /*    パリティー なし        */
  27.     lineend    ({CR});        /*    送信行の終わりの処理    */
  28.     dataleng({8bit});    /*    データ長の設定        */
  29.     nattou    ({Yes});    /*    なっとうスクロール有    */
  30.     sendtype({Line});    /*    行単位送信        */
  31.     dispecho({Yes});    /*    送信中エコーバック有    */
  32.     code    ({sjis});    /*    シフトJIS    */
  33.     /*baud(RD3SPEED);    /*    ROAD3通信時上限速度    */
  34.     };
  35.  
  36. %REDIAL        {5};    /*    リダイヤル回数(回)        */
  37. %Wtime1        {60};    /*    入力待ち時間(秒)        */
  38. %Wtime2        {120};    /*    入力待ち時間(秒)        */
  39.  
  40. /************************************************************************/
  41. /*        共通処理モジュール                    */
  42. /************************************************************************/
  43.  
  44. %BELL    @xc({07});        /*    ベルコード    */
  45.  
  46. /*    音声メッセージ出力処理        */
  47. %SNDMSG    {
  48.     [file]
  49.     case    (SOUND={}||SOUND={\},
  50.         {No},{case(@filechk(@dir2(SOUND)|file),
  51.             {Yes},{snd(@dir2(SOUND)|file)},
  52.             {No}, {display(BELL)})},
  53.         {Yes},{display(BELL)}
  54.         );
  55.     };
  56.  
  57. /*    異常切断処理    */
  58. %Abort    { 
  59.     [CommentA]
  60.     display(CommentA);
  61.     SNDMSG({okasi_f.snd});
  62.     display({\n\nあ~ん、強制終了するわヨ☆\n});
  63.     discon;
  64.     };
  65.  
  66. /*    モデム強制切断処理    */
  67. %ModemOff{
  68.     wait(2,{type({+++})});
  69.     wait    (Wtime1,{Abort({\nモデムが切り替わらないよぉ~\n})},
  70.         {OK},{wait(2,{type({ATH0\n})})}
  71.         );
  72.     };
  73.  
  74. /*    異常を検出した場合の処理    */
  75. %AbortOff{
  76.     display({\n\nホストの反応がおかしいよぉ~\n});
  77.     SNDMSG({okasi_f.snd});
  78.     display({\n\nあ~ん、モデムを直接切断するわヨ☆\n});
  79.     ModemOff;
  80.     wait    (Wtime1,{Abort({\n\nモデムからの応答が無いよぉ~\n}|BELL)},
  81.         {OK},{display({\n\nモデムを直接切断したヨン☆\n}|BELL)}
  82.         );
  83.     discon;
  84.     };
  85.  
  86. /*    NIFTY-Serve 切断処理    */
  87. %NIFoff{
  88.     footnote({NIFTY-Serve 切断処理中,,,♪});
  89.     display({\n\n☆登録処理を中止します☆\n}|BELL);
  90.     type({3\n});
  91.     wait    (Wtime1,
  92.         {display({\n\nホストが受け付けないよぉ~\n});AbortOff;},
  93.         {\n01+},{ModemOff},
  94.         {\n*},    {wait(1);type({OFF\n})}
  95.         );
  96.     wait    (Wtime1,
  97.         {display({\n\n回線が切れないよぉ~\n});AbortOff;},
  98.         {NO CARRIER},{display({\n\n ROAD2/3/4 の切断処理完了\n})},
  99.         {OK},{display({\n\n ROAD1 の切断処理完了\n})}
  100.         );
  101.     discon;
  102.     };
  103.  
  104. %AUTOEND{
  105.     footnote({オンライン・サインアップ中止処理中,,,♪});
  106.     display({\n☆突然ですが、オンライン・サインアップの処理を中止しました☆\n\n});
  107.     display(VerLev|{は、万一のことを考えて、最初のアクセスでは\n\n});
  108.     display({登録されないように初期設定してあります。\n\n});
  109.     display({送信した内容に誤りがないか、念のため確認してください。\n\n});
  110.     SNDMSG({owatta.snd});wait(1);
  111.     };
  112.  
  113. /*    受信文字列の時間待ち処理    */
  114. %WAITCHAR{
  115.     [sec,Waitchr,WaitcmdC]
  116.     wait    (sec,    {AbortOff},
  117.             Waitchr,WaitcmdC
  118.         );
  119.     };
  120.  
  121. /*    n番目の部分文字列をとりだす関数    */
  122. %nth    {
  123.     [str,n,sep]
  124.     var    a[256];    
  125.     var    m[3];
  126.     a:=str;
  127.     m:=0;
  128.     case    (n<1,
  129.         {Yes},{im({})},
  130.         {No},
  131.         {loop    ({
  132.             m:=m+1;
  133.             case(m==n||a={},{Yes},{im({No})},
  134.                 {No},{a:=@body(a,sep);im({Yes})});
  135.             });
  136.          im(@head(a,sep));
  137.         });
  138.     };
  139.  
  140. /************************************************************************
  141. *    ダイヤリング開始処理                        *
  142. *************************************************************************/
  143. /*  type @p */
  144. %typeCNIF{
  145.     N2:=0;
  146.     loop    ({
  147.         type({C NIF\n});
  148.         wait    (Wtime2,{im({TimeOut})},
  149.             {HOST NAME?\n*},
  150.             {case    (N2<5,    {No},{im({RetryOver})},
  151.                     {Yes},{im({Yes})})},
  152.             {Clear NC 0\n},{type({off});callrd1;},
  153.             {Enter},{im({Connect})},
  154.             {本日は定期メンテナンス},{im({Maintenance})}
  155.             );
  156.         N2:=N2+1;
  157.         });
  158.     };
  159.  
  160. %Road2p    {
  161.     wait    (6,{type({@P\n})});
  162.     wait    (Wtime2,{im({TimeOut})},
  163.         {HOST NAME?\n*},{TELNO:=road2;typeCNIF});
  164.     };
  165.  
  166. %Road3    {
  167.     wait    (Wtime2,{im({TimeOut})},
  168.         {HOST NAME?\n*},{TELNO:=road3;typeCNIF});
  169.     };
  170.  
  171. /*  type .00+ and retry */
  172. %type00    {
  173.     N2:=0;
  174.     loop    ({
  175.         wait(2);
  176.         type({.00+});
  177.         wait    (Wtime2,{im({TimeOut})},
  178.             {71+},    {im({Maintenance})},
  179.             {46+},
  180.             {case    (N2<5,    {No},{im({RetryOver})},
  181.                     {Yes},{im({Yes})})},
  182.             {+\n00+},
  183.             {case    (N2<5,    {No},{im({RetryOver})},
  184.                     {Yes},{im({Yes})})},
  185.             {Enter},{TELNO:=@head(road1,{/});im({Connect})},
  186.             {Host is not in service},{im({Maintenance})},
  187.             {Please call again},{im({Maintenance})},
  188.             {本日は定期メンテナンス},{im({Maintenane})}
  189.             );
  190.         N2:=N2+1;
  191.         });
  192.     };
  193.  
  194. %callrd1{
  195.     N31:=N31+1;
  196.     road1:=@nth(ROAD1,N31,{;});
  197.     case    (road1={},{Yes},{N31:=0});
  198.     case    (N1>REDIAL,
  199.         {Yes},{im({RedialOver})},
  200.         {No},
  201.         {
  202.         case    (@head(road1,{/})={},
  203.             {Yes},{im({NoTelephone})},
  204.             {No},
  205.             {
  206.             N1:=N1+1;
  207.             display({\nROAD1に電話をします☆(^_^)/♪\n});
  208.             footnote(@head(road1,{/})|{ に電話中,,,♪});
  209.             case    (@nth(road1,2,{/})={1200},
  210.                 {Yes},
  211.                 {
  212.                 baud(1200);
  213.                 discon;
  214.                 dialone({AT}|@nth(MODEM,1,{/})|{D}|DIAL|
  215.                     @nth(road1,1,{/}),type00,{im({Busy})});
  216.                 },
  217.                 {No},
  218.                 {
  219.                 case(@getchar(@nth(MODEM,2,{_}),1,4)={1200},
  220.                     {Yes},
  221.                     {
  222.                     baud(1200);
  223.                     dialone({AT}|@nth(MODEM,1,{/})|{D}|
  224.                         DIAL|@nth(road1,1,{/}),
  225.                         type00,{im({Busy})});
  226.                     },
  227.                     {No},
  228.                     {
  229.                     baud(2400);
  230.                     discon;
  231.                     dialone({AT}|@nth(MODEM,1,{/})|
  232.                         @nth(MODEM,2,{/})|{D}|DIAL|
  233.                         @nth(road1,1,{/}),
  234.                         type00,{im({Busy})});
  235.                     });
  236.                 });
  237.             });
  238.         });
  239.     };
  240.  
  241. %callrd2{
  242.     N32:=N32+1;
  243.     road2:=@nth(ROAD2,N32,{;});
  244.     case    (road2={},{Yes},{N32:=0});
  245.     case    (N1>REDIAL,
  246.         {Yes},{im({RedialOver})},
  247.         {No},
  248.         {
  249.         case    (road2={},
  250.             {Yes},{im({NoTelephone})},
  251.             {No},
  252.             {
  253.             N1:=N1+1;
  254.             display({\nROAD2に電話をします☆(^_^)/♪\n});
  255.             footnote(road2|{ に電話中,,,♪});
  256.             case(@getchar(@nth(MODEM,2,{_}),1,4)={1200},
  257.                 {Yes},{baud(1200)},{No},{baud(2400)});
  258.             discon;
  259.             dialone({AT}|@nth(MODEM,1,{/})|@nth(MODEM,2,{/})|{D}|
  260.                 DIAL|road2,Road2p,{im({Busy})});
  261.             });
  262.         });
  263.     };
  264.  
  265. %callrd3{
  266.     N33:=N33+1;
  267.     var    AP3[3];
  268.     var    RD3SPEED[5];    /* ROAD3通信時上限速度    */
  269.     road3:=@nth(ROAD3,N33,{;});
  270.     case    (road3={} && N33>1,
  271.         {Yes},{N33:=1;road3:=@nth(ROAD3,N33,{;})});
  272.     case    (N1>REDIAL,
  273.         {Yes},{im({RedialOver})},
  274.         {No},
  275.         {
  276.         case    (road3={},
  277.             {Yes},{im({NoTelephone})},
  278.             {No},
  279.             {
  280.             N1:=N1+1;
  281.             display({\nROAD3/4に電話します☆(^_^)/♪\n});
  282.             footnote(road3|{ に電話中,,,♪});
  283.             case    (@getchar(@nth(MODEM,2,{_}),1,4),
  284.                 {1200},{baud(1200)},
  285.                 {2400},{baud(2400)},
  286.                 {4800},{baud(4800)},
  287.                 {9600},{case    (RD3SPEED,
  288.                         {4800},{baud(4800)},
  289.                         {9600},{baud(9600)},
  290.                         {19200},{baud(9600)},
  291.                         ,{})},
  292.                 {1440},{case    (RD3SPEED,
  293.                         {4800},{baud(4800)},
  294.                         {9600},{baud(9600)},
  295.                         {19200},{baud(9600)},
  296.                         ,{})},
  297.                 {1920},{case    (RD3SPEED,
  298.                         {4800},{baud(4800)},
  299.                         {9600},{baud(9600)},
  300.                         {19200},{baud(19200)},
  301.                         ,{})}
  302.                 );
  303.             discon;
  304.             dialone({AT}|@nth(MODEM,1,{/})|@nth(MODEM,2,{/})|{D}|
  305.                 DIAL|road3,Road3,{im({Busy})});
  306.             });
  307.         });
  308.     };
  309.  
  310. %DIALING{
  311.     N1:=0;
  312.     N31:=0;    N32:=0;    N33:=0;
  313.     loop    ({
  314.         case    (AP3={Yes},
  315.             {Yes},
  316.             {
  317.  
  318.         case    (@callrd3,
  319.             {Connect},{im({No})},
  320.             {Maintenance},
  321.             {display({\nNIFTYがメンテナンス中です\n});
  322.                 AbortOff;},
  323.             {RedialOver},
  324.             {Abort({\n}|REDIAL|
  325.                 {回かけても電話がつながりません\n})},
  326.             {NoTelephone},{im({No})},
  327.             ,{im({Yes})}
  328.             );
  329.  
  330.             },
  331.             {No},
  332.             {
  333.  
  334.         case    (@callrd2,
  335.             {Connect},{im({No})},
  336.             {Maintenance},
  337.             {display({\nNIFTYがメンテナンス中です\n});
  338.                 AbortOff;},
  339.             {RedialOver},
  340.             {Abort({\n}|REDIAL|{回かけても電話がつながりません\n})},
  341.             ,
  342.             {
  343.             case    (@callrd1,
  344.                 {Connect},{im({No})},
  345.                 {Maintenance},
  346.                 {display({\nNIFTYがメンテナンス中です\n});
  347.                     AbortOff;},
  348.                 {RedialOver},
  349.                 {Abort({\n}|REDIAL|
  350.                 {回かけても電話がつながりません\n})},
  351.                 ,{im({Yes})}
  352.                 );
  353.             });
  354.  
  355.             });
  356.         });
  357.     };
  358.  
  359. %RETRY{
  360.     footnote({受信ログの確認中,,,♪});
  361.     display({受信内容は、マウス左クリックで画面をスクロールさせて}|
  362.                 {遡って確認することが出来ます。\n\n});
  363.     display({確認が済みましたら、画面左下の[終了]}|
  364.                 {ボタンを左クリックしてください。\n\n});
  365.     wait(3);
  366.     loop    ({footnote({終了},{b});
  367.         waitx();
  368.         case    (@xtype,
  369.             101,{im({No})},    201,{im({No})},
  370.             ,{im({Yes})}
  371.             );
  372.         });
  373.  
  374.     footnote({再度オンライン・サインアップの手続き選択中,,,♪});
  375.     SNDMSG({erande.snd});
  376.     select    ({再度オンライン・サインアップを開始し、登録手続きを完了しますか?},
  377.         ,,
  378.         { 登録手続きを続行(CONTINUE)},{YesNo:={1}; #CONNECT.PLP;},
  379.         {      中     止    (STOP)  },{});
  380.     };
  381.  
  382. /************************************************************************
  383. *        オートログイン処理                    *
  384. *************************************************************************/
  385. /*    サインアップ確認後の処理    */
  386. %SGNUP{
  387.     type(YesNo|{\n});
  388.     receive({SIGN_UP.LOG});
  389.     WAITCHAR(Wtime1,{1:登録する  2:登録中止)\n:},{type({1\n})});
  390.     WAITCHAR(Wtime2*2,{改行キーを押して下さい\n>},{type({\n})});
  391.     wait    (999,{AbortOff;},
  392.         {Enter User-ID  --->},
  393.         {
  394.         footnote({ID番号入力処理中,,,♪});
  395.         case    (ID={},
  396.             {Yes},
  397.             {SNDMSG({nyuryoku.snd});
  398.             ID:=@input({ID(なるべく半角で、最後は「リターンキー↓」)}|
  399.                 {を入力してネ☆});type(ID|{\n});}
  400.             );
  401.         },
  402.         {Error},{AbortOff}
  403.         );
  404.     wait    (999,{AbortOff},
  405.         {Enter Password --->},
  406.         {
  407.         footnote({パスワード入力処理中,,,♪});
  408.         case    (PW={},
  409.             {Yes},
  410.             {SNDMSG({nyuryoku.snd});
  411.             PW:=@input({パスワード(最後は「リターンキー↓」)}|
  412.                 {を入力してネ☆});type(PW|{\n});}
  413.             );
  414.         wait    (Wtime2*2,{AbortOff},
  415.             {Error},
  416.             {display({\nパスワードがおかしいよぉ~\n});AbortOff;},
  417.             {--登録終了--\n},
  418.             );
  419.         },
  420.         {Error},{display({\n番号が間違ってない?\n});AbortOff;}
  421.         );
  422.     footnote({受信ログ(SIGN_UP.LOG)保存処理中,,,♪});
  423.     WAITCHAR(Wtime2,{改行キーを押して下さい\n>},{});
  424.         type({\n});
  425.         loop    ({
  426.             wait(Wtime2*5,{stoprec;im({No})},
  427.             {改行キーを押して下さい\n>},
  428.             {type({\n});im({Yes})},
  429.             {入力して下さい。\n:},{im({No})});
  430.             });
  431.     stoprec;
  432.     display({\n☆オンライン・サインアップ手続きを完了しました☆\n});
  433.     display({\n☆サインアップ登録ログは、SIGN_UP.LOG に保存しました☆\n});
  434.     display({\n☆N.O.S.を終了します☆\n});
  435.     case    (ID={},    {Yes},{writeSET({USER_SET.SET})},
  436.             {No},{writeSET(@getchar(ID,1,8)|{.SET})});
  437.     stop;
  438.     };
  439.  
  440. /*    オートログイン処理    */
  441. %NIFLOGIN{
  442.     footnote(VerLev|{ 初期処理中,,,♪});
  443.     display(VerLev|{ の通信を開始します☆(^_^)/♪\n});
  444.     display({\nモデムの初期化を開始します☆(^_^)/♪\n\n});
  445.     type({ATZ\n});
  446.     wait    (Wtime1,{Abort({\nモデムがおかしいよぉ~\n}|BELL)},
  447.         {\nOK},{});
  448.     init;                    /* 各種初期設定 */
  449.     case    (ROAD3={},{Yes},{AP3:={No}});
  450.     case    (ROAD3<>{} && @head(ROAD1,{/})={} && ROAD2={},
  451.             {Yes},{AP3:={Yes}});
  452.     case    ((AP3={Yes} && ROAD3={})||
  453.          (AP3<>{Yes} && @head(ROAD1,{/})={} && ROAD2={}),
  454.             {Yes},    {display({\nアクセス用電話番号がありません});
  455.                 AbortOff},
  456.             {No},{});
  457. /*    display({\n}|@getchar(@nth(MODEM,2,{_}),1,4)|{\n}|RD3SPEED|{\n});/**/
  458.     DIALING;
  459.     footnote({NIFTY-Serve 接続処理中,,,♪});
  460.     WAITCHAR(Wtime1,{Connection-ID  --->},{type({SGN\n})});
  461.     wait    (Wtime1,{AbortOff;},
  462.         {Enter Serial # --->},
  463.         {
  464.         footnote({シリアル・ナンバーの入力処理中,,,♪});
  465.         case    (SERno={},
  466.             {Yes},  {SNDMSG({nyuryoku.snd});
  467.                 SERno:=@input({シリアルナンバー(半角8文字)}|
  468.                 {(最後は「リターンキー↓」)を入力してネ☆});
  469.                 type(SERno|{\n})},
  470.             {No},    {type(SERno|{\n})}
  471.             );
  472.         },
  473.         {\n Serial # Error},{AbortOff}
  474.         );
  475.     wait    (Wtime1,{AbortOff;},
  476.         {Enter Agreement # -->},
  477.         {
  478.         footnote({アグリメント・ナンバーの入力処理中,,,♪});
  479.         case    (AGRno={},
  480.             {Yes},  {SNDMSG({nyuryoku.snd});
  481.                 AGRno:=@input({アグリメントナンバー(半角8文字)}|
  482.                 {(最後は「リターンキー↓」)を入力してネ☆});
  483.                 type(AGRno|{\n});
  484.             footnote({オンライン・サインアップ処理中,,,♪})},
  485.             {No},    {type(AGRno|{\n});
  486.             footnote({オンライン・サインアップ処理中,,,♪})}
  487.             );
  488.         wait    (Wtime2,{AbortOff;},
  489.             {\n Agreement # Error},
  490.             {display({\n番号がおかしいよぉ~\n});AbortOff;},
  491.             {表示する  2:しない)\n:},
  492.             );
  493.         },
  494.         {Error},{display({\n番号が間違ってない?\n});AbortOff;}
  495.         );
  496.     };
  497.  
  498.     NIFLOGIN;
  499.     type({2\n});
  500.     WAITCHAR(Wtime1,{同意する  2:しない)\n:},{type({1\n})});
  501.     WAITCHAR(Wtime1,{氏名の入力(漢字で 8文字まで)\n},
  502.         {
  503.         footnote({氏名の入力処理中,,,♪});
  504.         case    (NAME={},
  505.             {Yes},  {SNDMSG({nyuryoku.snd});
  506.                 NAME:=@input({氏名(漢字で8文字)}|
  507.                 {(最後は「リターンキー↓」)を入力してネ☆});
  508.                 type(NAME|{\n})},
  509.             {No},    {wait(1);type(NAME|{\n})}
  510.             );
  511.         });
  512.     WAITCHAR(Wtime1,{姓:ローマ字で20文字まで 例:YAMADA)\n},
  513.         {
  514.         footnote({氏(ローマ字)の入力処理中,,,♪});
  515.         case    (Lname={},
  516.             {Yes},  {SNDMSG({nyuryoku.snd});
  517.                 Lname:=@input({氏(ローマ字で20文字)}|
  518.                 {(最後は「リターンキー↓」)を入力してネ☆});
  519.                 type(Lname|{\n})},
  520.             {No},    {wait(1);type(Lname|{\n})}
  521.             );
  522.         });
  523.     WAITCHAR(Wtime1,{名:ローマ字で20文字まで 例:TARO)\n},
  524.         {
  525.         footnote({名(ローマ字)の入力処理中,,,♪});
  526.         case    (Fname={},
  527.             {Yes},  {SNDMSG({nyuryoku.snd});
  528.                 Fname:=@input({名(ローマ字で20文字)}|
  529.                 {(最後は「リターンキー↓」)を入力してネ☆});
  530.                 type(Fname|{\n})},
  531.             {No},    {wait(1);type(Fname|{\n})}
  532.             );
  533.         });
  534.  
  535.     WAITCHAR(Wtime1,{性別 (1:男性  2:女性)\n},
  536.         {
  537.         footnote({性別の入力処理中,,,♪});
  538.         case    (SEX={},
  539.             {Yes},  {SNDMSG({nyuryoku.snd});
  540.                 SEX:=@input({性別(1:男性  2:女性)}|
  541.                 {(最後は「リターンキー↓」)を入力してネ☆});
  542.                 type(SEX|{\n})},
  543.             {No},    {type(SEX|{\n})}
  544.             );
  545.         });
  546.  
  547.     WAITCHAR(Wtime1,{生年月日 (西暦で入力 例:1965/09/30)\n},
  548.         {
  549.         footnote({生年月日 (西暦で)の入力処理中,,,♪});
  550.         case    (BIRTHDAY={},
  551.             {Yes},  {SNDMSG({nyuryoku.snd});
  552.                 BIRTHDAY:=@input({生年月日 (西暦で)}|
  553.                 {(最後は「リターンキー↓」)を入力してネ☆});
  554.                 type(BIRTHDAY|{\n})},
  555.             {No},    {type(BIRTHDAY|{\n})}
  556.             );
  557.         });
  558.     footnote({オンライン・サインアップ確認処理中,,,♪});
  559.     WAITCHAR(Wtime1,{1:OK  2:修正  3:登録中止)\n:},{type({1\n})});
  560.     WAITCHAR(Wtime1,{アフリカ・オセアニア)\n:},{type({1\n})});
  561.     WAITCHAR(Wtime1,{1:OK  2:NG)\n:},{type({1\n})});
  562.     WAITCHAR(Wtime1,{ 47:沖繩)\n:},
  563.         {
  564.         footnote({都道府県名の番号入力処理中,,,♪});
  565.         case    (CITY={},
  566.             {Yes},  {SNDMSG({nyuryoku.snd});
  567.                 CITY:=@input({都道府県名のコード番号}|
  568.                 {(最後は「リターンキー↓」)を入力してネ☆});
  569.                 type(CITY|{\n})},
  570.             {No},    {type(CITY|{\n})}
  571.             );
  572.         });
  573.     WAITCHAR(Wtime1,{ 横浜市,葛飾郡,千代田区等)\n},
  574.         {
  575.         footnote({市郡名の入力処理中,,,♪});
  576.         case    (myCITY={},
  577.             {Yes},  {SNDMSG({nyuryoku.snd});
  578.                 myCITY:=@input({市郡名(漢字で5文字)}|
  579.                 {(最後は「リターンキー↓」)を入力してネ☆});
  580.                 type(myCITY|{\n})},
  581.             {No},    {wait(1);type(myCITY|{\n})}
  582.             );
  583.         });
  584.     WAITCHAR(Wtime1,{23区のみ区名まで 例:YOKOHAMASHI,KATUSHIKAGUN)\n},
  585.         {
  586.         footnote({市郡名(ローマ字)の入力処理中,,,♪});
  587.         case    (RmyCITY={},
  588.             {Yes},  {SNDMSG({nyuryoku.snd});
  589.                 RmyCITY:=@input({市郡名(ローマで32字)}|
  590.                 {(最後は「リターンキー↓」)を入力してネ☆});
  591.                 type(RmyCITY|{\n})},
  592.             {No},    {wait(1);type(RmyCITY|{\n})}
  593.             );
  594.         });
  595.     WAITCHAR(Wtime1,{20文字以内  例 :南大井6-26-1)\n},
  596.         {
  597.         footnote({所番地の入力処理中,,,♪});
  598.         case    (myBANCHI={},
  599.             {Yes},  {SNDMSG({nyuryoku.snd});
  600.                 myBANCHI:=@input({所番地(20文字)}|
  601.                 {(最後は「リターンキー↓」)を入力してネ☆});
  602.                 type(myBANCHI|{\n})},
  603.             {No},    {wait(1);type(myBANCHI|{\n})}
  604.             );
  605.         });
  606.     WAITCHAR(Wtime1,{20文字以内  例 :大森ベルポートA館)\n},
  607.             {wait(1);type(myKATAGAKI|{\n})});
  608.     WAITCHAR(Wtime1,{30文字以内 例:6-26-1 MINAMI-OI)\n},
  609.         {
  610.         footnote({所番地(ローマ字)の入力処理中,,,♪});
  611.         case    (RmyBANCHI={},
  612.             {Yes},  {SNDMSG({nyuryoku.snd});
  613.                 RmyBANCHI:=@input({所番地(ローマ字で30文字)}|
  614.                 {(最後は「リターンキー↓」)を入力してネ☆});
  615.                 type(RmyBANCHI|{\n})},
  616.             {No},    {wait(1);type(RmyBANCHI|{\n})}
  617.             );
  618.         });
  619.     WAITCHAR(Wtime1,{30文字以内 例:OMORI BELLPORT A)\n},
  620.             {wait(1);type(RmyKATAGAKI|{\n})});
  621.     WAITCHAR(Wtime1,{郵便番号(例:102 )\n:},
  622.         {
  623.         footnote({郵便番号の入力処理中,,,♪});
  624.         case    (YUBINno={},
  625.             {Yes},  {SNDMSG({nyuryoku.snd});
  626.                 YUBINno:=@input({郵便番号}|
  627.                 {(最後は「リターンキー↓」)を入力してネ☆});
  628.                 type(YUBINno|{\n})},
  629.             {No},    {type(YUBINno|{\n})}
  630.             );
  631.         });
  632.  
  633.     footnote({電話番号の入力処理中,,,♪});
  634.     WAITCHAR(Wtime1,{市外局番から入力 例:03-5471-5800)\n:},
  635.             {type(TELno|{\n})});
  636.     footnote({オンライン・サインアップ確認処理中,,,♪});
  637.     WAITCHAR(Wtime1,{1:OK  2:修正  3:登録中止)\n:},{type({1\n})});
  638.     WAITCHAR(Wtime1,{勤務先 (30文字以内)\n},
  639.         {
  640.         case    (OFFICE={},
  641.             {Yes},  {wait(1);type({\n})},
  642.             {No},
  643.             {
  644.             footnote({勤務先の入力処理中,,,♪});
  645.             wait(1);type(OFFICE|{\n});
  646.             WAITCHAR(Wtime1,{部課名 (30文字以内)\n},
  647.             {
  648.             footnote({部課名の入力処理中,,,♪});
  649.             case    (KAKARI={},
  650.                 {Yes},  {SNDMSG({nyuryoku.snd});
  651.                     KAKARI:=@input({部課名(30文字)}|
  652.                     {(最後は「リターンキー↓」)を入力してネ☆});
  653.                     type(KAKARI|{\n})},
  654.                 {No},    {wait(1);type(KAKARI|{\n})}
  655.                 );
  656.             });
  657.             WAITCHAR(Wtime1,
  658.             {市外局番から入力  例:03-5471-5800)\n:},
  659.             {
  660.             footnote({勤務先電話番号の入力処理中,,,♪});
  661.             case    (OFFICEno={},
  662.                 {Yes},  {SNDMSG({nyuryoku.snd});
  663.                     OFFICEno:=@input({勤務先電話番号}|
  664.                     {(最後は「リターンキー↓」)を入力してネ☆});
  665.                     type(OFFICEno|{\n})},
  666.                 {No},    {type(OFFICEno|{\n})}
  667.                 );
  668.             });
  669.  
  670.             WAITCHAR(Wtime1,{  14:その他)\n:},
  671.             {
  672.             footnote({業種種別番号の入力処理中,,,♪});
  673.             case    (BUSINESS={},
  674.                 {Yes},  {SNDMSG({nyuryoku.snd});
  675.                     BUSINESS:=@input({業種種別番号}|
  676.                     {(最後は「リターンキー↓」)を入力してネ☆});
  677.                     type(BUSINESS|{\n})},
  678.                 {No},    {type(BUSINESS|{\n})}
  679.                 );
  680.             });
  681.             footnote({オンライン・サインアップ確認処理中,,,♪});
  682.             WAITCHAR(Wtime1,{1:OK  2:修正  3:登録中止)\n:},
  683.             {type({1\n})});
  684.             });
  685.         });
  686.  
  687.     case    (SERno={NIF00777} && AGRno={NIFTYSGN},
  688.         {Yes},  {},
  689.         {No},
  690.         {
  691.         footnote({コンピュサーブID取得の入力処理中,,,♪});
  692.         WAITCHAR(Wtime1,
  693.             {1:取得する 2:しない)\n:},
  694.             {
  695.             case    (ComID={1},
  696.                 {Yes},
  697.                 {
  698.                 type(ComID|{\n});
  699.                 WAITCHAR(Wtime1,{1:OK  2:NG)\n:},
  700.                 {type({1\n})});
  701.                 WAITCHAR(Wtime1,{表示する  2:しない)\n:},
  702.                 {type({2\n})});
  703.                 WAITCHAR(Wtime1,{同意する  2:しない)\n:},
  704.                 {type({1\n})});
  705.                 },
  706.                 {No},
  707.                 {
  708.                 type(ComID|{\n});
  709.                 WAITCHAR(Wtime1,{1:OK  2:NG)\n:},
  710.                 {type({1\n})});
  711.                 });
  712.             });
  713.         });
  714.     WAITCHAR(Wtime1,{ 16:NIFTY-UCカード)},
  715.         {footnote({クレジットカード種別の入力処理中,,,♪});
  716.         case    (CLEDIT={},
  717.             {Yes},  {SNDMSG({nyuryoku.snd});
  718.                 CLEDIT:=@input({クレジットカード種別}|
  719.                 {(最後は「リターンキー↓」)を入力してネ☆});
  720.                 type(CLEDIT|{\n});},
  721.             {No},    {type(CLEDIT|{\n});}
  722.             );
  723.         });
  724.  
  725.     WAITCHAR(Wtime1,{会員番号(例:XXXX XXXX XXXX XXXX)\n:},
  726.         {
  727.         footnote({会員番号の入力処理中,,,♪});
  728.         case    (MEMBER={},
  729.             {Yes},  {SNDMSG({nyuryoku.snd});
  730.                 MEMBER:=@input({会員番号}|
  731.                 {(最後は「リターンキー↓」)を入力してネ☆});
  732.                 type(MEMBER|{\n})},
  733.             {No},    {type(MEMBER|{\n})}
  734.             );
  735.         });
  736.     WAITCHAR(Wtime1,{カード有効期限 (例 : 11/96)\n:},
  737.         {
  738.         footnote({有効期限の入力処理中,,,♪});
  739.         case    (LIMIT={},
  740.             {Yes},  {SNDMSG({nyuryoku.snd});
  741.                 LIMIT:=@input({有効期限を入力してネ☆}|
  742.                 {(例:11/96)}); type(LIMIT|{\n})},
  743.             {No},    {type(LIMIT|{\n})}
  744.             );
  745.         });
  746.     footnote({オンライン・サインアップ確認処理中,,,♪});
  747.     WAITCHAR(Wtime1,{1:OK  2:修正  3:登録中止)\n:},{type({1\n})});
  748.     WAITCHAR(Wtime1,{ 12:その他)\n:},
  749.         {
  750.         footnote({ワープロ/パソコンメーカ名の番号入力処理中,,,♪});
  751.         case    (MAKER={},
  752.             {Yes},  {SNDMSG({nyuryoku.snd});
  753.                 MAKER:=@input({ワープロ/パソコン メーカ番号}|
  754.                 {(最後は「リターンキー↓」)を入力してネ☆});
  755.                 type(MAKER|{\n})},
  756.             {No},    {type(MAKER|{\n})}
  757.             );
  758.         });
  759.     WAITCHAR(Wtime1,{機種(漢字で8文字以内)\n:},
  760.         {
  761.         footnote({ワープロ/パソコン機種名の入力処理中,,,♪});
  762.         case    (MACHINE={},
  763.             {Yes},  {SNDMSG({nyuryoku.snd});
  764.                 MACHINE:=@input({機種名(漢字で8文字)}|
  765.                 {(最後は「リターンキー↓」)を入力してネ☆});
  766.                 type(MACHINE|{\n})},
  767.             {No},    {type(MACHINE|{\n})}
  768.             );
  769.         });
  770.     WAITCHAR(Wtime1,{画面の最大表示行数:9~99)\n:},
  771.         {
  772.         footnote({1画面での最大表示行数の入力処理中,,,♪});
  773.         case    (LINEno={},
  774.             {Yes},  {SNDMSG({nyuryoku.snd});
  775.                 LINEno:=@input({画面最大表示行数(9~99)}|
  776.                 {(最後は「リターンキー↓」)を入力してネ☆});
  777.                 type(LINEno|{\n})},
  778.             {No},    {type(LINEno|{\n})}
  779.             );
  780.         });
  781.     footnote({オンライン・サインアップ確認処理中,,,♪});
  782.     WAITCHAR(Wtime1,{1:非公開 改行のみ:公開)\n:},{type(OPEN|{\n})});
  783.  
  784.     WAITCHAR(Wtime1,{13:その他},
  785.         {
  786.         footnote({入力処理中,,,♪});
  787.         case    (NIFTY={},
  788.             {Yes},  {SNDMSG({nyuryoku.snd});
  789.                 NIFTY:=@input({NIFTYをどこで知ったの?(番号で)}|
  790.                 {(最後は「リターンキー↓」)を入力してネ☆});
  791.                 type(NIFTY|{\n})},
  792.             {No},    {type(NIFTY|{\n})}
  793.             );
  794.         });
  795.  
  796.     WAITCHAR(Wtime1,{1:OK  2:修正  3:登録中止)\n:},
  797.         {case    (YesNo={1},
  798.             {Yes},  {SGNUP;},
  799.             {No},    {NIFoff; AUTOEND; RETRY;}
  800.             );
  801.         });
  802.